Skip to main content

임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치 및 그 방법

· 7 min read
이우진
담당교수
류호동

국내특허(10-1648307), 2016-08-08, (출원번호: 10-2015-0074293), 2015-05-27.

서지정보

서지정보
IPC- G06F 11/28(2006.01.01)
CPC- G06F 11/28(2013.01)
출원번호(일자)1020150074293 (2015.05.27)
출원인경북대학교 산학협력단
번역문제출일자
등록번호(일자)1016483070000 (2016.08.08)
공개번호(일자)
공고번호(일자)(2016.08.23)전문다운
국제출원번호(일자)
국제공개번호(일자)
우선권정보
법적상태등록
심사진행상태등록결정(일반)
심판사항
구분국내출원/신규
원출원번호(일자)
관련 출원번호
심사청구여부(일자)Y(2015.05.27)
심사청구항수10
요약

본 발명은 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 대상 임베디드 장치를 구동하기 위해 상기 장치 내 저장된 소프트웨어의 각각의 함수에 대한 단위 테스트를 수행하는 과정에서 함수수행경로에 대응하는 로그정보들 중에서, 중복되는 로그정보들은 폐기하여, 저장되는 로그정보의 양을 최소화하고, 임베디드 소프트웨어의 테스트 커버리지를 높일 수 있는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치 및 그 방법에 관한 것이다.

상기한 본 발명에 의하면, 종래의 기술보다 로그정보를 저장할 리소스를 최소화할 수 있으며, 적은 양의 로그정보만으로도 임베디드 소프트웨어 장치의 모든 수행 경로와 그 결과를 확인할 수 있는 효과가 있다.

인명정보

출원인
번호이름(번호)주소
1경북대학교 산학협력단 (220040016844)- 사업자번호대구광역시 북구...
발명자
번호이름(번호)주소
1이우진대구광역시 수성구...
2류호동대구광역시 북구...
대리인
번호이름(번호)주소
1김종선 (920030002489)서울특별시 강남구 역삼로*길 ** (역삼동) **층(역삼동, 광성빌딩)(케이엘피특허법률사무소)
2이형석 (920030003344)서울특별시 강남구 역삼로*길 ** (역삼동) **층(역삼동, 광성빌딩)(케이엘피특허법률사무소)
최종권리자
번호이름(번호)주소
1경북대학교 산학협력단대구광역시 북구...
등록 이후 발명자 정보
번호이름(번호)주소
1이우진대구광역시 수성구...
2류호동대구광역시 북구...
등록 이후 대리인 정보
번호이름(번호)주소
1김종선 (920030002489)서울특별시 강남구 역삼로*길 ** (역삼동) **층(역삼동, 광성빌딩)(케이엘피특허법률사무소)
2이형석 (920030003344)서울특별시 강남구 역삼로*길 ** (역삼동) **층(역삼동, 광성빌딩)(케이엘피특허법률사무소)

지정국

구분국가명
데이터가 존재하지 않습니다.

인용/피인용

인용
국가공보번호공보일자발명의 명칭IPC
대한민국1020100031321 A2010.03.22로봇 소프트웨어 컴포넌트의 계층별 테스트방법G06F 11/36
대한민국1020120058753 A2012.06.08디버거를 이용한 임베디드 소프트웨어 단위 테스트 자동화 장치 및 방법G06F 11/36
피인용
출원번호(일자)출원 연월일발명의 명칭IPC
10201601487842016.11.09관점 지향 프로그래밍을 활용한 아키텍처 기반의 통합 결함 검출 방법 및 시스템 그리고 도구G06F 11/34
10201601622112016.11.30테스트커버리지 기능을 가진 임베디드 소프트웨어 테스팅 장치G06F 11/36

청구항

번호청구항
1장치를 구동시키는 소프트웨어가 저장되고, 상기 소프트웨어로부터 추출된 로그정보를 분석장치로 전달하는 대상 임베디드 장치; 및 상기 대상 임베디드 장치로부터 전달 받은 상기 로그정보 중에서 일부 로그 정보만을 선택해서 저장하고, 나머지 로그정보는 폐기하는 분석장치;를 포함하고, 상기 로그정보는, 상기 소프트웨어를 구성하는 하나 이상의 단위 테스트(unit test) 목적함수(function)의 호출정보; 상기 단위 테스트 목적함수의 호출 과정에서 상기 단위 테스트 목적함수로 전달되는 인자 정보; 및 상기 단위 테스트 목적함수가 수행되어 얻은 결과값; 을 포함하고, 상기 분석장치는, 상기 대상 임베디드 장치로부터 전달 받은 상기 로그정보를 임시로 저장하는 로그 큐(queue of log); 상기 대상 임베디드 장치로부터 상기 단위 테스트 목적함수의 명령코드를 전달 받으면, 상기 단위 테스트 목적함수의 명령코드로부터 제어흐름그래프(control flow graph) 및 그래프구조정보를 생성하는 코드 분석기(code analyzer); 상기 로그정보와 상기 그래프구조정보를 입력 받아서 상기 단위 테스트 목적함수의 수행경로(path)를 찾아낸 후, 상기 함수수행경로에 대응하는 상기 로그정보 중에서 일부 로그정보만을 선택하는 로그 분석기(log analyzer); 및 상기 로그 분석기가 선택한 상기 일부 로그정보를 저장하는 저장부; 를 포함하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치.
2제1항에 있어서, 상기 로그정보는, 상기 대상 임베디드 장치에 저장된 상기 소프트웨어에 소정의 명령코드를 삽입하여 상기 단위 테스트 목적함수로부터 추출되는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치.
3삭제
4제1항에 있어서, 상기 제어흐름그래프는, 상기한 단위 테스트 목적함수가 수행될 때, 상기 단위 테스트 목적함수로 전달되는 인자 정보의 값에 상관없이, 상기 단위 테스트 목적함수가 수행되는 순서 및 경로를 나타내고, 상기 그래프구조정보는, 상기 제어흐름그래프를 표현하는 XML (Extensible Markup Language) 기반의 파일 형식으로 되어 있고, 상기 제어흐름그래프의 구조에 관한 정보를 전달하는데 이용되는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치.
5제1항에 있어서, 상기 로그 큐는, 상기 로그정보를 상기 로그 분석기로 전달하고, 상기 임시 저장된 로그정보를 삭제하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치.
6제1항에 있어서, 상기 로그 분석기는, 상기 로그정보와 상기 그래프구조정보를 전달 받으면, 상기 단위 테스트 목적함수마다 ID를 부여하고, 상기 단위 테스트 목적함수의 ID별로 상기 로그정보 중에서 상기 함수수행경로에 대응하는 로그정보를 선택하는 과정에서 상기 함수수행경로에 대응하는 다른 로그정보가 이미 상기 저장부에 저장되어 있는 경우에는, 중복되는 로그정보를 선택하지 않고 폐기하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 장치.
7(a) 대상 임베디드 장치의 저장된 소프트웨어에 소정의 명령코드가 삽입되는 단계; (b) 상기 소프트웨어로부터 로그정보를 추출하는 단계; (c) 상기 대상 임베디드 장치가 상기 추출한 로그정보를 분석장치로 전달하는 단계; (d) 상기 분석장치의 코드 분석기가 단위 테스트 목적함수의 명령코드로부터 제어흐름그래프 및 그래프구조정보를 생성하는 단계; (e) 상기 분석장치의 로그 분석기가 상기 로그정보와 상기 그래프구조정보를 입력 받으면 상기 단위 테스트 목적함수의 수행경로를 찾아서 상기 로그정보 중에 상기 함수수행경로에 대응하는 일부 로그정보만을 선택하고, 나머지 로그정보는 폐기하는 단계; 및 (f) 저장부가 상기 선택된 일부 로그정보를 저장하는 단계; 를 포함하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 방법.
8제 7항에 있어서, 상기 (b) 단계에서, 상기 로그정보는, 상기 소프트웨어를 구성하는 하나 이상의 단위 테스트 목적함수의 호출정보; 상기 단위 테스트 목적함수의 호출 과정에서 상기 단위 테스트 목적함수로 전달되는 인자 정보; 및 상기 단위 테스트 목적함수가 수행되어 얻은 결과값; 을 포함하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 방법.
9제 7항에 있어서, 상기 (c) 단계에서, 상기 분석장치는, 상기 대상 임베디드 장치로부터 전달 받은 상기 로그정보를 로그 큐에 임시로 저장하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 방법.
10제 7항에 있어서, 상기 제어흐름그래프는, 상기한 단위 테스트 목적함수가 수행될 때, 상기 단위 테스트 목적함수로 전달되는 인자 정보의 값에 상관없이, 상기 단위 테스트 목적함수가 수행되는 순서 및 경로를 나타내고, 상기 그래프구조정보는, 상기 제어흐름그래프를 표현하는 XML 기반의 파일 형식으로 되어 있고, 상기 제어흐름그래프의 구조에 관한 정보를 전달하는데 이용되는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 방법.
11제 7항에 있어서, 상기 (e)단계에서, 로그 큐는, 상기 대상 임베디드 장치로부터 전달 받은 상기 로그정보를 임시로 저장한 후 상기 로그정보를 상기 로그 분석기로 전달하고, 상기 임시 저장된 로그정보를 삭제하며, 상기 로그 분석기는, 상기 로그정보와 상기 그래프구조정보를 전달 받으면, 상기 단위 테스트 목적함수마다 ID를 부여하고, 상기 단위 테스트 목적함수의 ID별로 상기 로그정보 중에서 상기 함수수행경로에 대응하는 로그정보를 선택하는 과정에서 상기 함수수행경로에 대응하는 다른 로그정보가 이미 상기 저장부에 저장되어 있는 경우에는, 중복되는 로그정보를 선택하지 않고 폐기하는 것을 특징으로 하는 임베디드 소프트웨어 단위 테스트를 위한 로그 기반 테스팅 방법.

패밀리정보

통합심사정보

순번패밀리번호출원일자국가코드국가명종류
데이터가 존재하지 않습니다.
DOCDB 패밀리정보
순번패밀리번호출원일자국가코드국가명종류
데이터가 존재하지 않습니다.

국가연구개발사업

순번연구부처주관기관연구사업연구과제
1지식경제부경북대학교산학협력단SW컴퓨팅산업원천기술개발자율군집을 지원하는 웰빙형 정보기기 내장 소프트웨어 플랫폼 개발
2미래창조과학부경북대학교 산학협력단정보통신기술인력양성스마트 자동차를 위한 AUTOSAR 기반 차량 내외부 통신 플랫폼 및 응용 기술

대표도면

도면1

도면2

도면3

도면4a

도면4b

도면5

도면6

도면7a

도면7b